The common function of a Web server is to deliver web pages on a request to client computers. A client, generally through a web browser or web crawler, initiates a communication by sending a request for a specific resource to the Web server and the latter sends back a response with the content of the resource or eventually with an error message if unable to do so.
The World Wide Web Consortium (W3C) defines a Web service or Web application as a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically Web Services Description Language, known by the acronym WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP standard messages, typically conveyed using HTTP protocol with an Extensible Markup Language (XML) serialization in conjunction with other Web-related standards.
A Web Application Programming Interface (API) is an interface between a Web service or Web application and a Web server that allows redirecting a request towards the Uniform Resource Locators (URL) of the requested Web services.
When used in the context of Web development, a Web API is typically a defined set of Hypertext Transfer Protocol (HTTP) request messages along with a definition of the structure of response messages, usually expressed in an Extensible Markup Language (XML) or JavaScript Object Notation (JSON) format.
Nowadays Web API allows combining multiple Web services and applications into new applications known as mashups.
However, when running composite Web services, the requesting Web server must send as much as requests than the requested Web services before consolidating information and sending back the mashup result. This is time consuming and cumbersome.
In language programming, the well-known Command Line Interface (CLI) is the appropriate tool for interfacing with a computer operating system such as UNIX or Windows. CLI users enter commands in a text mode to define one or several operations to be executed by the computer system. Upon completion, the result is provided in the form of text lines on the Command Line Interface. There exists today some users interface for using CLI which are named “CLI shell” that allow to have various commands to be executed by a respective operating system. Most popular are the UNIX shell, the cmd.exe shell or the COMMAND.COM shell to name a few.
Whereas CLI offer interface with extensive dialog possibilities, and consequently CLI are mainly used by programmers, developers and system administrators as it requires knowledge of language queries, their use is limited to execution of operating system commands.
So, there is not today any interface, whether CLI, API or any other one that allows entering one request to address several web services or applications. And there is a need for a Web server that does not require running successive requests to Web services and Web applications to provide a composite application.
Finally, there is a need for a solution that removes the aforementioned drawbacks. The present invention offers such solution.